home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2008 February / PCWFEB08.iso / Software / Freeware / Miro 1.0 / Miro_Installer.exe / Miro_Downloader.exe / migrateappname.pyc (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2007-11-12  |  2.4 KB  |  80 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.5)
  3.  
  4. import util
  5. import platformcfg
  6. import os
  7. import os.path as os
  8. import resources
  9. import config
  10. import prefs
  11. import _winreg
  12. from xpcom import components
  13.  
  14. def migrateSupport(oldAppName, newAppName):
  15.     global migratedSupport, migratedSupport
  16.     migratedSupport = False
  17.     templateVars = util.readSimpleConfigFile(resources.path('app.config'))
  18.     appDataDir = platformcfg._appDataDirectory
  19.     oldSupportDir = os.path.join(appDataDir, templateVars['publisher'], oldAppName, 'Support')
  20.     newSupportDir = os.path.join(appDataDir, templateVars['publisher'], newAppName, 'Support')
  21.     if os.path.exists(oldSupportDir):
  22.         if not os.path.exists(os.path.join(newSupportDir, 'preferences.bin')):
  23.             
  24.             try:
  25.                 for name in os.listdir(oldSupportDir):
  26.                     os.rename(os.path.join(oldSupportDir, name), os.path.join(newSupportDir, name))
  27.                 
  28.                 migratedSupport = True
  29.  
  30.         
  31.     
  32.     if migratedSupport:
  33.         runSubkey = 'Software\\Microsoft\\Windows\\CurrentVersion\\Run'
  34.         
  35.         try:
  36.             folder = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, runSubkey)
  37.         except WindowsError:
  38.             e = None
  39.             if e.errno == 2:
  40.                 folder = _winreg.CreateKey(_winreg.HKEY_CURRENT_USER, runSubkey)
  41.             else:
  42.                 raise 
  43.         except:
  44.             e.errno == 2
  45.  
  46.         count = 0
  47.         while True:
  48.             
  49.             try:
  50.                 (name, val, type) = _winreg.EnumValue(folder, count)
  51.             except:
  52.                 return True
  53.  
  54.             count += 1
  55.             if name == oldAppName:
  56.                 filename = os.path.join(resources.resourceRoot(), '..', '%s.exe' % templateVars['shortAppName'])
  57.                 filename = os.path.normpath(filename)
  58.                 writable_folder = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, runSubkey, 0, _winreg.KEY_SET_VALUE)
  59.                 _winreg.SetValueEx(writable_folder, newAppName, 0, _winreg.REG_SZ, filename)
  60.                 _winreg.DeleteValue(writable_folder, oldAppName)
  61.                 return True
  62.                 continue
  63.         return True
  64.     else:
  65.         return False
  66.  
  67.  
  68. def migrateVideos(oldAppName, newAppName):
  69.     pybridgeCID = '@participatoryculture.org/dtv/pybridge;1'
  70.     pybridge = components.classes[pybridgeCID].getService(components.interfaces.pcfIDTVPyBridge)
  71.     if migratedSupport:
  72.         oldDefault = os.path.join(platformcfg._baseMoviesDirectory, oldAppName)
  73.         newDefault = os.path.join(platformcfg._baseMoviesDirectory, newAppName)
  74.         videoDir = config.get(prefs.MOVIES_DIRECTORY)
  75.         if videoDir == newDefault:
  76.             pybridge.changeMoviesDirectory(newDefault, True)
  77.         
  78.     
  79.  
  80.